package chapter004;

import java.util.Random;

/**
 * 随机产生数字
 *
 * @author Jack魏
 */
public class Point02 {
    public static void main(String[] args) {
        // 对于种子相同的Random对象，生成的随机数序列是一样的。
        Random ran1 = new Random(10);
        System.out.println("使用种子为10的Random对象生成[0,10)内随机整数序列: ");
        for (int i = 0; i < 10; i++) {
            System.out.print(ran1.nextInt(10) + " ");
        }
        System.out.println();
        Random ran2 = new Random(10);
        System.out.println("使用另一个种子为10的Random对象生成[0,10)内随机整数序列: ");
        for (int i = 0; i < 10; i++) {
            System.out.print(ran2.nextInt(10) + " ");
        }
        System.out.println();

        // 在没带参数构造函数生成的Random对象的种子缺省是当前系统时间的毫秒数。
        Random random = new Random();
        int i = random.nextInt(100);
        // 随机产生0-100的整数,不包括100
        System.out.println("从0随机到100--- [0,100) === " + i);

        // 生成[0,1.0)区间的小数
        double d = random.nextDouble();
        System.out.println("生成[0,1.0)区间的小数===" + d);

        // 生成[1,6)区间的小数：
        d = random.nextDouble() * 5 + 1;
        System.out.println("生成[1, 6)区间的小数===" + d);
    }
}
